﻿
Namespace Benachrichtigungen

    Public Class BenachrichtigungsManager

#Region "Singleton"


        Private Shared _instance As BenachrichtigungsManager


        Public Shared Function GetInstance() As BenachrichtigungsManager

            If _instance Is Nothing Then
                _instance = New BenachrichtigungsManager
            End If

            Return _instance

        End Function


#End Region


        Public Event BenachrichtigungAdded(ByVal bena As Benachrichtigung)
        Public Event BenachrichtigungRemoved(ByVal bena As Benachrichtigung)

        Private _benachService As Services.ServiceDefinitions.BenachrichtigungsService

        Private Sub New()

            _benachService = Services.ServiceManager.GetInstance().GetBenachrichtigungsService()

        End Sub


        Public Sub Benachrichtige(ByVal b As Benachrichtigung)

            _benachService.SaveBenachrichtigung(b)

            RaiseEvent BenachrichtigungAdded(b)

        End Sub

        Public Sub DeleteBenachrichtigung(ByVal b As Benachrichtigung)

            _benachService.DeleteBenachrichtigung(b)

            RaiseEvent BenachrichtigungRemoved(b)

        End Sub

    End Class

End Namespace


